*. Sticky notes

$6718C = 4-bpp 8x8 font

Text is raw but scattered as hard-coded pointers or embedded into
scripting structures. Menus are somewhat different as they have (x,y)
cursor positions, variable box sizes, and individual 32-bit string addresses.

Look for code $71F4 for virtually all PRINTING ROUTINES. Practically
everything goes through there.

There may be undumped system strings in LEA form. Look inside 'file/dump_list2.txt'
for additional locations to add ones you find during future dump passes.



$a720c = 4-bpp intro tiles (recycled)

There's 4 chapters of intro text. All scene tiles are DMA'd to VRAM per chapter and
NT tiles are updated. But each NT is stored as RLE (see packer tools). Parameters
to the compression routine control the location and dimensions of the data.

Normally it's stored as a vertical bar of 16x16 tiles. Which can be recycled.
00 00 01 02
00 00 03 04
05 06 01 02
07 08 03 04
09 0A 00 00
0B 0C 00 00

An ASM hack is made using asm86 (SEKAS by Twilight Translations is better but
currently unavailable). Which will show some examples on how to re-arrange the
bar dimensions and place it in a horizontal arrangement. Note that you can only
have 3 visible lines with this method, but more tiles to use in return.

You can arrange the tile #s to any format you want. But the trick is that the
game caches the data _beneath_ the bar. And replaces it per NT text update. So
the new code will re-add the bottom book border to avoid corruption when
turning pages (asm1/1a).

; ============================================================================
; ############################################################################
; ============================================================================

Atlas 1.06 is modified (nothing new since 'Little Master 3')

> #FILL( int stop_address, int file_byte )		- pads up to stop address
  #FILL( int start, stop, int file_byte )		- pads address range
  #FILL( int start, stop, int file_byte, string file )	- pads address range IN FILE

  #WARN( int warn_address )				- OKAY/BARF if PC counter >= warn_address

  #SAVEPC( string file_name )				- writes PC to file
  #LOADPC( string file_name )				- loads PC from file

  #INSERT( string file_name )				- inserts binary file at current PC

  MSB16,MSB24,MSB32,GB4xxx				- addressing modes

  #SETINDEX( int index_number, int size )		- init the index numbers
  #WRITEINDEX( int address, int index_bump )		- writes index numbers to address, # bytes
							  and auto-bumps the index #
  #WRITEINDEX( int addr, int index_bump, string file )	- writes index number to address IN FILE

  #SAVEINDEX( string file_name )			- writes INDEX # to file
  #LOADINDEX( string file_name )			- loads INDEX # from file

  #ALIGN( int byte_count )                      	- does file alignment (1,2,3,4)

  #W08BYTE( int address, int byte )			- writes byte to address (no JMP)
  #W08BYTE( int addr, int byte, string file )		- writes byte to address IN FILE (no JMP)

  #EMBCLEAR()						- erases all embedded pointers

  #SAVEPTRTABLE( PTRTABLE table, string file_name )	- writes PTRTABLE address to file
  #LOADPTRTABLE( PTRTABLE table, string file_name )	- loads PTRTABLE address from file 
